package com.iflytek.sbd.demo.lambda.bokedemo;

import com.iflytek.sbd.demo.lambda.A;

import java.util.Optional;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Supplier;

/**
 * @program: sbd
 * @description:
 * @author: 陈英俊
 * @create: 2022-01-21 10:45
 */
public class SaveUpdateDemo {


    public static void main(String[] args) {

        // 我们针对业务的保存接口,一般都是add和update放在一起,我们可以这样写

        A newA = new A();
        newA.setId("1");
        newA.setName("2");
        newA.setAge("3");
        //    Optional.ofNullable(selectById("2")).map(s -> update(s)).orElseGet(insert(newA));


    }

    private static A selectById(String id) {
        A a = new A();
        a.setId("123");
        a.setName("陈亮");
        a.setAge("25");
        if (id.equals(a.getId())) {
            return a;
        } else {
            return null;
        }
    }

    private static void insert(A a) {
        System.out.println("执行新增");
        // return null;
    }

    private static A update(A a1) {
        System.out.println("执行更新");
        return null;
    }
}
